package models

import "time"

//内存对齐概念

type Post struct {
	ID          int64     `json:"id,string,omitempty" db:"post_id"` //json后的 string 的意思是有时候，前端在传递来的json数据中可能会使用字符串类型的数字，这个时候可以在结构体tag中添加string来告诉json包从字符串中解析相应字段的数据
	AuthorID    int64     `json:"author_id,omitempty" db:"author_id"`
	CommunityID int64     `json:"community_id,omitempty" db:"community_id" binding:"required"`
	Status      int32     `json:"status,omitempty" db:"status"`
	Title       string    `json:"title,omitempty" db:"title" binding:"required"`
	Content     string    `json:"content,omitempty" db:"content" binding:"required"`
	CreateTime  time.Time `json:"create_time" db:"create_time"`
}

// ApiPostDetail 帖子详情接口的结构体
type ApiPostDetail struct {
	AuthorName       string                    `json:"author_name"`
	VoteNum          int64                     `json:"vote_num"`
	*Post                                      //嵌入帖子结构体
	*CommunityDetail `json:"community_detail"` //嵌入社区信息
}
